package me.zhengjie.modules.system.service

import me.zhengjie.logging.annotation.Log
import me.zhengjie.modules.system.domain.*
import me.zhengjie.modules.system.service.dto.DictDTO
import me.zhengjie.modules.system.service.dto.DictQueryCriteria
import jakarta.servlet.http.HttpServletResponse
import org.springframework.data.domain.Pageable
import java.io.IOException

/**
 * @author Kuki Wu
 * @date 2019-04-10
 */
interface DictService {
    fun queryAll(dict: DictQueryCriteria, pageable: Pageable?): Any?
    fun queryAll(dict: DictQueryCriteria): List<DictDTO>
    fun findById(id: Long): DictDTO?
    fun create(resources: Dict): DictDTO?
    fun update(resources: Dict)
    fun delete(id: Long)

    @Throws(IOException::class)
    fun download(queryAll: List<DictDTO>, response: HttpServletResponse?)
}